package com.originskyseed.platform.count.service;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

import com.originskyseed.platform.user.model.UserInfo;

/**
 * Service接口类
 *
 * @author wlj
 */
public interface IContentCountAnchorService {

	/**
	 * 统计主播数量
	 *
	 * @return
	 * @throws Exception
	 */
	public int countAnchorAmount(List<String> userIdList) throws Exception;

	/**
	 * 统计体系下主播礼物营收
	 *
	 * @return
	 * @throws Exception
	 */
	public BigDecimal countAnchorGiftEarnings(List<String> userIdList) throws Exception;

	/**
	 * 统计方法
	 * 
	 * @param userInfo
	 * @return
	 * @throws Exception
	 */
	public Map<String, Object> countContentAnchorAndPlayer(UserInfo userInfo) throws Exception;

	/**
	 * 新用户消费
	 *
	 * @return
	 * @throws Exception
	 */
	public BigDecimal selectNewPlayerRechargeAmount(List<String> userIdList) throws Exception;

	/**
	 * 优质用户数
	 * 
	 * @param userIdList
	 * @return
	 * @throws Exception
	 */
	public int selectHighQualityUserNum(List<String> userIdList) throws Exception;

	/**
	 * 充值用户数
	 * 
	 * @param userIdList
	 * @return
	 * @throws Exception
	 */
	public int selectRechargeUserNum(List<String> userIdList) throws Exception;

	/**
	 * 利润趋势
	 * 
	 * @return
	 * @throws Exception
	 */
	public List<Map<String, Object>> profitTrend(int type, UserInfo userInfo) throws Exception;

	/**
	 * 查询成本和毛利和净利润
	 * 
	 * @return
	 * @throws Exception
	 */
	public Map<String, Object> selectBasePayAndGrossProfit(List<String> list, int type) throws Exception;

}
